package com.zjl.media.config.properties;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.util.Map;

/**
 * @author linfuxin Created on 2022-03-01 15:44:39
 */
@Data
@ConfigurationProperties(value = "media")
public class MediaProperties {
    private WebSocket webSocket;
    private Javacv javacv;
    private Integer waitHeaderFrameTime;
    private Integer bufferSize = 4096;
    private Integer socketTimeout = 10000;
    private Gpu gpu;

    private Param param;

    @Data
    public static class Javacv {
        private Map<String, String> grabberOption;
        private Map<String, String> recorderVideoOption;
    }

    @Data
    public static class Param {
        private String privateKey;
        private String publicKey;
    }

    @Data
    public static class WebSocket {
        private Integer port;
    }

    @Data
    public static class Gpu {
        private String type;
    }
}
